using System;
using System.Collections.Generic;
using System.Text;
using System.Xml.Schema;

namespace MindFactorial.LaunchPoint.Common
{
    /// <summary>
    /// delegate used to communicate accross threads
    /// </summary>
    public delegate void CrossThreadDelegate();

    /// <summary>
    /// Represents a method that will handle an XML schema validation event
    /// </summary>
    /// <param name="args"></param>
    public delegate void ValidationHandler(ValidationEventArgs args);

    /// <summary>
    /// used as an all purpose delegate
    /// </summary>
    public delegate void GenericHandler();

    /// <summary>
    /// used as an all purpose delegate
    /// </summary>
    /// <typeparam name="T"></typeparam>
    /// <param name="parameter"></param>
    public delegate void GenericSingleParameterHandler<T>(T parameter);

    /// <summary>
    /// represents a curried function
    /// </summary>
    public delegate void CurriedFunctionDelegate();
    
}
